html {
  /* Breadcrumb */

  .ant-breadcrumb {
    align-items: center;
    display: flex;
  }

  /* Button */

  .ant-btn[disabled]:not(.ant-btn-link),
  .ant-btn[disabled]:not(.ant-btn-link):hover {
    background-color: var(--theme-colors-monochrome-15);
    border-color: var(--theme-colors-monochrome-12);
    color: var(--theme-colors-monochrome-9);
  }
  .ant-btn-primary[disabled],
  .ant-btn-primary[disabled]:hover,
  .ant-btn-primary.ant-btn-dangerous[disabled],
  .ant-btn-primary.ant-btn-dangerous[disabled]:hover {
    background-color: var(--theme-colors-monochrome-11);
    border-color: var(--theme-colors-monochrome-11);
    color: var(--theme-colors-monochrome-17);
  }
  .ant-btn-icon-only {
    align-items: center;
    display: flex;
    justify-content: center;
  }

  /* Checkbox */

  .ant-checkbox-checked .ant-checkbox-inner::after {
    border-left: 0;
    border-top: 0;
  }

  /* Dropdown */

  .ant-dropdown-menu {
    border: solid var(--theme-sizes-border-width) var(--theme-colors-monochrome-12);
    border-radius: var(--theme-sizes-border-radius);
    box-shadow: var(--theme-shadow);
  }

  /* Form */

  .ant-form-item-explain {
    align-items: center;
    display: flex;
    font-size: var(--theme-sizes-font-small);
  }

  /* Input */

  .ant-input-affix-wrapper { border-radius: var(--theme-sizes-border-radius); }
  .ant-input-affix-wrapper.ant-input-affix-wrapper-lg { padding: 6.5px 7.5px; }
  .ant-input-affix-wrapper.ant-input-affix-wrapper-sm { padding: 0 3px; }
  .ant-input-affix-wrapper:focus,
  .ant-input-affix-wrapper-focused {
    box-shadow: var(--theme-focus-shadow);
  }
  .ant-input-affix-wrapper > .ant-input-prefix,
  .ant-input-affix-wrapper > .ant-input-suffix {
    align-items: center;
    display: flex;
  }
  .ant-input-affix-wrapper > .ant-input-prefix { margin-right: 6px; }
  .ant-input-affix-wrapper > .ant-input-suffix { margin-left: 6px; }
  .ant-input-affix-wrapper.ant-input-affix-wrapper-lg > .ant-input-prefix { margin-right: 7.5px; }
  .ant-input-affix-wrapper.ant-input-affix-wrapper-lg > .ant-input-suffix { margin-left: 7.5px; }
  .ant-input-affix-wrapper.ant-input-affix-wrapper-sm > .ant-input-prefix { margin-right: 3px; }
  .ant-input-affix-wrapper.ant-input-affix-wrapper-sm > .ant-input-suffix { margin-left: 3px; }
  .ant-input-affix-wrapper.ant-input-affix-wrapper-sm > .ant-input-prefix > i,
  .ant-input-affix-wrapper.ant-input-affix-wrapper-sm > .ant-input-suffix > i {
    font-size: var(--theme-sizes-icon-small);
  }

  /* Modal */

  .ant-modal > .ant-modal-content > .ant-modal-header,
  .ant-modal > .ant-modal-content > .ant-modal-body {
    padding: var(--theme-sizes-layout-big);
  }

  /* Picker */

  .ant-picker {
    border-radius: var(--theme-sizes-border-radius);
  }

  /* Select */

  .ant-select > .ant-select-arrow {
    transform: rotate(0deg);
    transition: transform 0.2s linear;
  }
  .ant-select.ant-select-open > .ant-select-arrow {
    transform: rotate(180deg);
  }
  .ant-select.ant-select-open.ant-select-show-search {
    min-width: 100px;
  }
  .ant-select-item-option-content {
    width: 0;
  }
  .ant-select-dropdown {
    border: solid var(--theme-sizes-border-width) var(--theme-colors-monochrome-12);
    border-radius: var(--theme-sizes-border-radius);
    box-shadow: var(--theme-shadow);
  }
  .ant-select:not(.ant-select-customize-input) .ant-select-selector {
    border-radius: var(--theme-sizes-border-radius);
  }
  .ant-select-focused.ant-select:not(.ant-select-customize-input) .ant-select-selector {
    box-shadow: var(--theme-focus-shadow);
  }
  .ant-select-multiple {
    .ant-select-selection-placeholder {
      color: rgba(0, 0, 0, 0.65);
      opacity: 1;
    }
    .ant-select-selector .ant-select-selection-search:first-child .ant-select-selection-search-input {
      margin-left: 0;
    }
  }

  /* Space */

  .ant-space.ant-space-horizontal.ant-space-align-center > .ant-space-item {
    align-items: center;
    display: inline-flex;
  }

  /* Spin */

  .ant-spin-container {
    height: 100%;
  }
  .ant-spin-nested-loading {
    height: 100%;
  }
  .ant-spin-nested-loading > div > .ant-spin-spinning {
    max-height: inherit;
  }

  /* Statistic */

  .ant-statistic-title {
    font-size: var(--theme-sizes-font-small);
  }
  .ant-statistic-content {
    font-size: var(--theme-sizes-font-large);
  }

  /* Table */

  .ant-table-thead > tr > th {
    border-color: var(--theme-colors-monochrome-13);
    border-style: solid;
    border-width: var(--theme-sizes-border-width) var(--theme-sizes-border-width) var(--theme-sizes-border-width) 0;
    white-space: nowrap;
  }
  .ant-table-thead > tr > th:first-child {
    border-left-width: var(--theme-sizes-border-width);
  }
  .ant-table-thead > tr > th:last-child {
    border-width: var(--theme-sizes-border-width) var(--theme-sizes-border-width) var(--theme-sizes-border-width) 0;
  }
  .ant-table-thead > tr > th:only-child {
    border-width: var(--theme-sizes-border-width);
  }
  .ant-table-thead > tr > th:hover > .ant-table-filter-column > .ant-table-filter-trigger-container {
    background-color: var(--theme-colors-monochrome-13);
  }
  .ant-table-thead > tr > th > .ant-table-filter-column > .ant-table-filter-trigger-container > .ant-table-filter-trigger {
    align-items: center;
    display: flex;
    justify-content: center;
  }
  .ant-table-tbody > tr [class*=tagPlus] {
    opacity: 0;
    user-select: none;
  }
  .ant-table-tbody > tr:hover [class*=tagPlus] {
    opacity: 1;
    user-select: auto;
  }
  .ant-table-tbody > tr > td {
    border-color: var(--theme-colors-monochrome-13);
    border-style: solid;
    border-top-color: transparent;
    border-width: var(--theme-sizes-border-width) 0;
  }
  .ant-table-tbody > tr > td:first-child {
    border-width: var(--theme-sizes-border-width) 0 var(--theme-sizes-border-width) var(--theme-sizes-border-width);
  }
  .ant-table-tbody > tr > td:last-child {
    border-width: var(--theme-sizes-border-width) var(--theme-sizes-border-width) var(--theme-sizes-border-width) 0;
  }
  .ant-table-tbody > tr > td:only-child {
    border-width: var(--theme-sizes-border-width);
  }
  .ant-table-tbody > tr.ant-table-row.highlighted > td {
    background-color: var(--theme-colors-monochrome-17);
    border-color: var(--theme-colors-action-normal);
    border-style: solid;
  }
  .ant-table-tbody > tr.ant-table-row.clickable {
    cursor: pointer;
  }
  .ant-table-tbody > tr.ant-table-row.clickable:hover > td {
    background-color: var(--theme-colors-monochrome-17);
    border-color: var(--theme-colors-action-normal);
    border-style: solid;
  }
  .ant-table .ant-table-tbody > tr > td.ant-table-selection-column,
  .ant-table .ant-table-tbody > tr > td.fullCell {
    min-width: var(--theme-sizes-layout-giant);
    padding: 0;
    position: relative;

    & > * {
      align-items: center;
      display: flex;
      height: 100%;
      justify-content: center;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%;
    }
  }

  /* Tabs */

  .ant-tabs {
    height: 100%;

    @media only screen and (max-width: $breakpoint-mobile) {
      height: auto;
    }
  }
  .ant-tabs .ant-tabs-tab {
    padding-top: 0;
  }
  .ant-tabs > .ant-tabs-nav {
    margin: 0;
  }
  .ant-tabs > .ant-tabs-content-holder {
    height: 100%;

    @media only screen and (max-width: $breakpoint-mobile) {
      height: auto;
    }
  }
  .ant-tabs > .ant-tabs-content-holder > .ant-tabs-content {
    height: 100%;
    overflow: auto;
    padding: var(--theme-sizes-layout-big) 0;

    @media only screen and (max-width: $breakpoint-mobile) {
      height: auto;
      overflow: inherit;
    }
  }
  .ant-tabs-top > .ant-tabs-nav::before,
  .ant-tabs-bottom > .ant-tabs-nav::before,
  .ant-tabs-top > div > .ant-tabs-nav::before,
  .ant-tabs-bottom > div > .ant-tabs-nav::before {
    border-color: var(--theme-colors-monochrome-12);
  }

  /* Tabs Cards Style */

  .ant-tabs-card > .ant-tabs-nav .ant-tabs-tab {
    border-color: var(--theme-colors-monochrome-12);
  }
  .ant-tabs-card > .ant-tabs-content-holder {
    background-color: var(--theme-colors-monochrome-17);
    border-color: var(--theme-colors-monochrome-12);
    border-style: solid;
    border-width: 0 var(--theme-sizes-border-width) var(--theme-sizes-border-width) var(--theme-sizes-border-width);
  }
  .ant-tabs-card > .ant-tabs-content-holder > .ant-tabs-content {
    padding: var(--theme-sizes-layout-big);
  }
}
